android p2p通话 安卓p2p下载

您所在的位置:网站首页 p2p 安卓下载 android p2p通话 安卓p2p下载

android p2p通话 安卓p2p下载

2024-04-14 03:24| 来源: 网络整理| 查看: 265

这里写目录标题P2P下载概述原理BT下载Torrent文件组成Tracker信息文件信息原理卡种和出种

P2P下载概述

传统的下载是C/S模式,即提供资源的人作为唯一的服务器,需要下载资源的人,都向这个唯一的服务器发送请求,当同时存在多个下载请求时,服务器的下载速率就会大大降低,因此P2P下载出现了。P2P下载是一种分布式的下载,待下载的文件分布在不同的主机上,当存在多个用户同时下载时,分别向拥有资源的其他主机发送请求,因此除了用户自身的带宽问题外,不存在下载速率受限的情况。

原理

P2P下载是一种双工的工作方式,每个客户端在完成下载后,就会成为服务器,有成为网络中的一个阶段性中心的可能。在P2P的网络环境中,彼此相连的计算机都处于平等的地位,各台计算机有相同的功能,无主从之分,一台计算机既可作为服务器,设定共享资源供网络中其他计算机所使用,又可以作为工作站,整个网络一般来说不依赖专用的集中服务器,也没有专用的工作站。网络中的每一台计算机既能充当网络服务的请求者,又对其它计算机的请求做出响应,提供资源、服务和内容。

BT下载

BT下载是P2P下载的一种,它下载的文件是Torrent文件,即我们平时所说的种子。

Torrent文件

Torrent文件,用于告知BT下载软件如何下载BT资源的文件,使用BT下载程序打开种子文件后,可以看到待下载的文件的内容。在下载你所需要的资源之前要先下载种子文件。 种子文件被BT协议所定义,可以保存一组文件的元数据。它的本质是文本文件。

组成

种子文件由两部分组成:1、Tracker信息;2、文件信息。

Tracker信息

BT下载都需要用到Tracker服务器的地址和针对Tracker服务器的设置。

Tracker服务器:客户端连上Tracker服务器就会获得一个下载人员的名单,根据这个BT会自动连接上别人的机器进行下载。一个BTClient在下载开始以及下载进行的过程中要不断地与Tracker服务器进行通信,以报告自己的信息并获取下载客户端的信息。示例:Client向Tracker服务器发一个HTTP的GET请求,并把自己的信息放在GET请求的参数中,这个请求的大致意思是“我是xxx(一个唯一的ID),我想要下载yyy文件,我的ip是aaa,我的端口是bbb”。因为这个过程是Client向Tracker发送请求,所以也不会收到重复的文件。文件信息

根据对目标文件的计算生成,计算结果根据BT协议的Bencode规则进行编码。

原理

资源发布者需要将待下载的文件虚拟分成大小相等的块,并把每块的索引信息和Hash验证码写入种子文件中。种子文件就是被下载文件的索引。

卡种和出种

当client都没有足够的数据块可以组成一个完整的文件时,拥有完整文件的种子发布者就是唯一的下载源。这个唯一的下载源,为了减轻自己日后的负担,就会控制文件上传的速度,让所有的下载者的速度都在差不多的范围内,这就是卡种。 当全部人完成下载时,只要下载完成的用户不立即关闭软件,网中就会出现多个同时上传的分布者,这样下次再有人下载资源时,就可以从已经下载好的用户那里获取资源,而不用向服务器请求资源,这就是出种。



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3